$(function() {
    $(".js_form input").click(function(){
        $("input").css({ 'border-color': '#323232', 'transition': '1s' })
    })  
    //手机
    var bool ;
    $('.js_form .js_phonenum').bind('input propertychange', function() {
        var phonenum = $(this).val();
        $(this).val(phonenum.replace(/[^0-9]/g, ''))
        if (checkMobile(phonenum)) {
            $(this).siblings('.js_prompt_phone').text('');
            bool = true
        } else {
            $(this).siblings('.js_prompt_phone').text('请输入11位有效手机号');
            bool = false
        }
    });
    // 检验手机号的正则
    function checkMobile(str) {
        var re = /^1[34578]{1}\d{9}$/
        if (re.test(str)) {
            return true
        } else {
            return false
        }
    };
    // function checkMobile(str) {
    //     var re = /^(1+\d{10})$/
    //     if (re.test(str)) {
    //         return true
    //     } else {
    //         return false
    //     }
    // };
    // 验证手机号码，获取手机验证码
    $(".js_form .js_getverifi").bind("click",function(){
        var sendphoneUrl = 'http://' + window.location.host + '/apis/account/signup_phone_validate';
        var data = {
            phone:$('.js_form .js_phonenum').val()
        }
        if(bool){ 
                $.ajax({
                    type: "POST",
                    dataType: "json",
                    url: sendphoneUrl,
                    data: data,
                    success: function(result) {
                        if (result.errno == 0) {
                            //号码没重复可以发短信验证码
                            countSecond(50,sDom)
                           sendMegVerificantion()
                        }else if(result.errno == 10020){
                            //手机号码已经存在不发短信验证码
                            $('.js_form .js_prompt_phone').text('手机号码已经存在');
                        }else if(result.errno == 10030){
                            //手机号码不合法不发短信验证码
                            $('.js_form .js_prompt_phone').text('手机号码不合法');
                        }
                    }
                });
        }else{
            alert(bool)
        }
    })
    // 发送短信验证码
    function sendMegVerificantion(){
        var sendMessageUrl = 'http://' + window.location.host + '/apis/account/signup_send_text_message';
        var sDom = $(".js_form .js_getverifi");
        // var verifiInput = $(".js_verification-popup .js_verifiInput");
        // var submit = $(".js_verification-popup .js_submit");
        var data ={phone:$('.js_form .js_phonenum').val()};
            $.ajax({
                type: "post",
                dataType: "json",
                url: sendMessageUrl,
                data:data,
                success: function(result) {
                    if (result.errno == 0) {
                        //短信验证码发送成功    
                    } else if(result.errno == 10081){
                        //输入图形验证码以继续
                        $(".js_form .js_prompt_megVer").text("输入图形验证码以继续");
                        $(".js_verification-popup").removeClass("disnone");
                        // $(".js_verification-popup .js_submit").bind("click",function(){
                        //     $.ajax({
                        //     type:"post",
                        //     dataType:"json",
                        //     url:sDom,
                        //     data:{phone:$('.js_form .js_phonenum').val(),
                        //           captcha:$(".js_verification-popup .js_verifiInput").val()
                        //      },
                        //     success:function(result){
                        //         if(result.errno==0){
                        //             // 图形验证码校验成功
                        //         }
                        //     }
                        // })
                        
                    }else if(result.errno == 10082){
                        //单日发送上限
                       $(".js_form .js_prompt_megVer").text("超过每日发送上限")
                    }else if(result.errno == 10084){
                        //触发手机号发送频率限制
                       $(".js_form .js_prompt_megVer").text("发送过于频繁")
                    }else if(result.errno == 10085){
                        //触发IP发送频率限制
                       $(".js_form .js_prompt_megVer").text("同一IP发送过于频繁")
                    }
                }
            });
    }
    //单击刷新验证码
    $("body").on("click",".js_captcha",function(){
        var rdm = Math.random();
        $(this).prop("src", '/captcha/image?rdm='+rdm); 
    })
    //隐藏验证码弹窗
    $('body').on('click','.js_hide',function () {
        $('.js_verification-popup').fadeOut(1000);
    })
    //读秒函数
    function countSecond(s, dom) {
            if (s > 0) {
                s -= 1;
                dom.val(s+"s")
                setTimeout(countting, 1000)
            } else {
                dom.val('获取验证码');
            }
    }
    // 手机短信验证码校验
    $(".js_form .js_messageVerification").bind("input propertychange",function(){
        var $megVer = $(this).val();
        $(this).val($megVer.replace(/[^0-9]/g, ''));
        if($(this).val().length == 6){
            console.log($(this).val());
            var checkMegVerifyUrl = '//' + window.location.host + '/apis/account/signup_verification_code_validate';
            var data = {
                phone:$('.js_form .js_phonenum').val(),
                mobile_verification_code:$('.js_form .js_messageVerification').val()
            }
            $.ajax({
                type: "post",
                dataType: "json",
                url: checkMegVerifyUrl,
                data: data,
                success: function(result) {
                    if (result.errno == 0) {
                        //短信验证码正确
                    } else if(result.errno == 10100){
                        //短信验证码不符
                       $(".js_form .js_prompt_megVer").text("短信验证码不符")
                    }
                }
            });

        } 
    })
    // 性别
    $("input[name='sex']").click(function(){
        $("input[name='sex']").attr("checked",false);
        $(this).attr("checked", true);
        // console.log($("input[name='sex'][checked]").val())
    })
    // 密码
    $(".js_form .js_password").on('input propertychange',function(){
        var password = $(this).val();
        var patrn = /^(\w){6,20}$/;  //只能输入6-14个字母、数字、下划线 
        console.log(password);
        if(!patrn.exec(password)){
           $(".js_form .js_prompt_password").text("请输入6-14位数字,字母和标点符号组合，至少包括一位字母和一位数字组合")
        }
    }) 
    // 重复密码
    $('.js_form .js_ret_password').on('input propertychange', function() {
        var retPassword = $(this).val();
        var password = $('.js_form .js_password').val();
        if (!password.length) {
            $(".js_form .js_prompt_password").text('请先创建密码');
            return
        }
        if (retPassword !== password) {
           $(".js_form .js_prompt_ret_password").text("两次输入的密码不一致")
        } 
    })
    //昵称验证
    $('.js_form .js_nickname').click(function(){
        $(this).val("")
    });
    $('.js_form .js_nickname').on('input propertychange', function() {
           var nickname = $(this).val();
           var length = getNickNameLength(nickname);
               if(nickname == ''){
                 $(".js_form .js_prompt_nickname").text('昵称不能为空')
               }else if(length<4||length>16){
                 $(".js_form .js_prompt_nickname").text('昵称为4-16个字符')
               }         
    })
    //计算昵称长度
    function getNickNameLength(str){
       var len = 0;
       for (var i = 0; i < str.length; i++) {
             var a = str.charAt(i);
    　　　　　　//函数格式：stringObj.match(rgExp) stringObj为字符串必选 rgExp为正则表达式必选项
    　　　　　　//返回值：如果能匹配则返回结果数组，如果不能匹配返回null
             if (a.match(/[^\x00-\xff]/ig) != null){
              len += 2;
             }else{
              len += 1;
             }
        }
        return len;
    }

    //ajax验证昵称是否存在
    $('.js_form .js_nickname').blur(function(){
       var nickname = $('.js_form .js_nickname').val();
       var checknameUrl = "http://www.charmsays.com/apis/account/signup_nickname_validate";
        $.ajax({ 
             url: checknameUrl,
             data:{nickname:nickname},
             dataType:"json",
             type:"post",
             async:false,
             success:function(result) {
                 if(result.errno==10001){
                   // 昵称已存在
                   $(".js_form .js_prompt_nickname").text("昵称已存在");
                 }else if(result.errno==10010){
                   // 昵称不合法
                   $(".js_form .js_prompt_nickname").text("昵称不合法");
                 }else if(result.errno==10011){
                   //昵称中包含被系统禁止的关键词
                 }
            }
        });
    })
    // 立即注册
    $(".js_form .js_submitBtn").click(function(){
        var submitUrl = "http://mlts.wzlysem.com/apis/account/signup_create";
        var data ={
            phone:$('.js_form .js_phonenum').val(),
            mobile_verification_code:$('.js_form .js_messageVerification').val(),
            gender:$("input[name='sex'][checked]").val(),
            nickname:$('.js_form .js_nickname').val(),
            password:$(".js_form .js_password").val(),
            retype_password:$('.js_form .js_ret_password').val()
        }
        $.ajax({
                type: "post",
                dataType: "json",
                url: submitUrl,
                data: data,
                success: function(result) {
                    if (result.error== 0) {
                        //注册成功
                        window.location.href = '//' + window.location.host + '/register/avatar';
                    } else{
                        aelrt("信息还不完整")
                    } 
                }
        });

    })

    
})
